interface Shape{// 要写这个 public interface Shape,必须要和文件名相同,用public修饰的

    public static void draw1(){
    System.out.println("a");
    }

    public abstract void draw();

    //default public void a(){
    //
    //}

    // public abstract void b();
}

class Ract implements Shape{
    public void draw(){
        System.out.println('*');
    }
}

class Flower implements Shape{
    public void draw(){
        System.out.println('!');
    }
}

public class test {
    public static void drawMap(Shape shape){
        shape.draw();
    }
    public static void main(String[] args) {
        Shape shape1 = new Ract();
        Shape shape2 = new Flower();

        drawMap(shape1);
        drawMap(shape2);

        Shape[] shape3 = {new Ract(),new Flower(),new Ract(),new Flower()};

        for(Shape shape : shape3){
            shape.draw();
        }

        Shape.draw1();
    }
}
